home *** CD-ROM | disk | FTP | other *** search
/ 2,000 Greater & Lesser Mysteries / 2,000 Greater and Lesser Mysteries.iso / computer / virus / mys00465.txt < prev    next >
Encoding:
Text File  |  1994-06-10  |  25.5 KB  |  499 lines

  1.  
  2.                     Anti-Viral Product Evaluation
  3.                           May 5, 1989
  4.  
  5.      This evaluation paper has been written by Jim Goodwin, Lynn
  6. Marsh and Tim Sankary.  It is copyrighted, 1989, and is intended
  7. for circulation among fellow members of the virus research
  8. community who use IBM PCs or compatibles.  We do not consider it
  9. complete, since we did not evaluate every available product, and
  10. it is not intended as a public guide to selecting antiviral
  11. programs.  We hope, however, that it will prove useful to other
  12. members of the community who work with live viruses and need
  13. ongoing protection for their systems.  This document may be
  14. freely copied and distributed providing the disclaimer and
  15. copyright are kept intact, and no changes, additions or deletions
  16. are made to the text.
  17.      We would like to acknowledge the ample research data
  18. provided by Jim Bates and Rusty Davis in England, Ivan Grebert of
  19. Acal Corporation in Paris, Colin Haynes of the International
  20. Computer Virus Institute, and the many volunteer researchers from
  21. the Silicon Valley area that contributed so much to our efforts. 
  22. We would also like to acknowledge the HomeBase users group for
  23. providing their detailed log of infection occurrences and other
  24. epidemiological data.
  25.  
  26.   
  27. The Need for a Reasonable Evaluation:
  28.      In the April issue of PC Magazine you will find a review of
  29. 11 antiviral products.  The review, while well intentioned,
  30. tested products against only two viruses (plus one simulated
  31. virus that was developed by the magazine).  None of the viruses
  32. were boot sector infectors (viruses which attach to the boot
  33. sector) and none were among the most common viruses.  Since the
  34. vast majority of virus infections are boot sector infections, and
  35. since most viruses are much more difficult to detect than the two
  36. chosen, the results of the review were next to meaningless.  The
  37. PC Magazine review was similar to many others published in the
  38. past year.  It was performed without adequate access to the
  39. viruses actually causing problems in the user community.  
  40.      A second problem with these reviews, is that many of the
  41. reviewers have had limited experience with the broad range of
  42. infections that have occurred within the past 18 months.  They
  43. base evaluations on assumptions that do not hold for the real
  44. world.  This is not necessarily the fault of the reviewers. 
  45. Viruses are a new phenomenon and few people have dedicated their
  46. time and resources to a long term study.  A reviewer who has had
  47. experience with only one or two viruses might naturally draw
  48. incorrect conclusions about "generic" virus issues.
  49.      For example, a number of viruses infect programs using
  50. common DOS calls (interrupt 21 or other interrupt call).  This
  51. type of infection can be easily detected and prevented.  An
  52. entire class of products, called Filters, has grown up around the
  53. assumption that virus infections can be prevented by redirecting
  54. certain interrupts and intercepting the infection replication
  55. process. It works for a few viruses.  The vast majority of
  56. infections, though, are caused by viruses that use non-standard
  57. I/O, and these infections cannot be prevented through interrupt
  58. re-vectoring techniques.  Thus, filter type products - included
  59. among them are C-4 and Flu-Shot+ - are virtually useless against
  60. most viruses.  Yet many reviewers, and some product developers,
  61. still believe that viruses can be stopped through re-directing
  62. system interrupts.
  63.      
  64. The criteria:
  65.      A lot of time and effort has gone into the various checksum,
  66. encryption, logging and chaining algorithms proposed as safe
  67. techniques for detecting viruses.  And much discussion and
  68. argumentation has gone one regarding the various merits of high
  69. security algorithms.  Yet, every generic application infector
  70. that we have seen to date could have been detected by merely
  71. checking to see if the SIZE of the file had changed.  Developing
  72. such a virus detector requires less than an hour of programming
  73. time and is as effective as available products costing hundreds
  74. of dollars.   We're not suggesting that size checking should be
  75. the criteria for detecting viruses (we know better), we are
  76. merely pointing out the vast gulf between theory and current
  77. reality.  We understand that viruses of today may not reflect the
  78. situation two years from now, and we also understand that current
  79. boot sector viruses and certain operating system viruses pose a
  80. special case to our size example, but the first step in solving
  81. any problem must be a solid understanding of the current state of
  82. the problem.  And the current problem is in a different world
  83. from the theoretical solutions proposed for it.
  84.      An astute reader might ask at this point why we would be
  85. concerned if the proposed solutions to viruses were overkill. 
  86. Isn't it better, you might think, to include as much protection
  87. as is available, to get as close to 100% security as possible? 
  88. We think not.  Beta testing of virus products in many
  89. corporations and our own experience with these products over the
  90. past year has shown that, beyond a certain point of
  91. reasonableness, increased security functions begin to hinder the
  92. computing process.  Either increases in required run time, or
  93. user constraints or annoying additions to the system make the
  94. products so cumbersome to use that the user ultimately discards
  95. them.  Alternately, false alarms and questionable product
  96. conditions desensitize the user, and thus real virus alarms, when
  97. they occur, are disregarded.
  98.      Again, we are not saying that sound security principles
  99. should not be included in a given product.  We are only
  100. suggesting that the search for the 100% solution must have its
  101. limits.  The theoretical discussions about batch file viruses,
  102. viruses that can imbed themselves within a program without
  103. changing initial branch addresses, and viruses that can infect
  104. without making any modifications to a program are interesting and
  105. entertaining.  But if you are selecting a product based on the
  106. ability to detect such viruses, then you will be disappointed.
  107.      In general then, our criteria for evaluating antiviral
  108. programs are:
  109.  
  110.      1.   The program's effectiveness against existing viruses. 
  111.           There are anywhere from two dozen to over 50 different
  112.           PC viruses (depending on how you classify them) that
  113.           can infect your system today.  If the product cannot
  114.           detect these viruses, then it certainly cannot detect
  115.           tomorrow's viruses.  We rated this criteria the
  116.           highest.
  117.  
  118.      2.   The techniques used by the program to anticipate new
  119.           viruses.  We have to admit to some subjectivity here. 
  120.           No-one really knows what virus may pop up tomorrow, but
  121.           reasonable people can make reasonable guesses (Tim
  122.           Sankary is the only member of this review team who
  123.           admits to being unreasonable).  We do expect to see
  124.           viruses in the next few years that can imbed themselves
  125.           inside a generic COM or EXE program without changing
  126.           its size.  We anticipate system infectors and other
  127.           program-specific viruses that can imbed themselves AND
  128.           not change initial branch instructions.  (We feel these
  129.           viruses, however, will be limited to common programs
  130.           such as IBMBIO, IBMSYS, COMMAND.COM etc.).  We
  131.           anticipate viruses that will encrypt themselves in such
  132.           a way that every infection will be different (1704
  133.           nearly achieves that now).  We anticipate boot sector
  134.           viruses that will not need to save and execute the
  135.           original boot sector.  We also expect viruses that will
  136.           entirely replace system modules, such as the command
  137.           interpreter.
  138.  
  139.      3.   The usability of the software.  This is the most
  140.           subjective criteria and we accordingly weighted it the
  141.           least.  We decided, however, that if we felt like
  142.           screaming, smashing the monitor or savagely beating the
  143.           family pets while trying to install or use the program,
  144.           then we would subtract points for lack of user
  145.           friendliness.
  146.  
  147. The Viruses:
  148.      Jim Goodwin insisted that there were 61 PC viruses and that
  149. we should test them all.  He includes in this list three versions
  150. of the Pakistani Brain that differ only in the imbedded text and
  151. volume label copyright display, and four identical versions of
  152. the 1704 that differ only in their activation dates.   Lynn
  153. Marsh, who has a new beau, and, we suspected, would like to
  154. spend time with him, suggested that there were only 14 base PC
  155. viruses.  Any modifications to these viruses, she insisted, were
  156. inconsequential and should be ignored.  A compromise was reached
  157. along the following lines:
  158.  
  159.           Any modification to a base virus that materially
  160.           altered its ability to be detected would be considered
  161.           a different virus for our testing purpose.  
  162.  
  163.      Frankly, the definition didn't help us much because we
  164. continued to squabble, but it eventually worked itself out.  It
  165. became clear that certain modifications to base viruses did
  166. indeed materially affect our test results.  As an example, one
  167. modification to the Israeli virus, called the New Jerusalem,
  168. performs a format of the hard disk when it activates, and it
  169. additionally does not have the EXE infector bug that the
  170. original Israeli had.  When this virus activated, one antiviral
  171. products that was able to detect the original Israeli file-delete
  172. activation and prevent it, was unable to detect the modified
  173. virus's format attempt.  There were numerous other such
  174. examples.  Even machine or configuration type changes (such as
  175. the numerous 1704 modifications) had an effect on testing under
  176. certain circumstances.  We finally narrowed the field down to 27
  177. distinct viruses, 11 of which were boot sector infectors.
  178.      We realize that our test base is skewed if you compare it
  179. to infection reporting statistics (where over 80% of infections
  180. are boot sector infections), but we feel the sampling will become
  181. more valid over time, since the boot infector ratio appears to be
  182. slowly declining.  
  183.      
  184. The Testing:
  185.      All testing was performed on systems with fixed disks. 
  186. Where applicable, the infection was introduced onto the hard
  187. disk.  The only exceptions to this were five boot sector viruses
  188. which would not replicate onto a fixed disk.  When testing
  189. against these floppy-only viruses, a 5 and 1/4 inch, 360KB
  190. diskette was used.  The test systems each contained over 300
  191. executable programs, approximately 2/3 EXE programs and 1/3 COM
  192. programs, arranged in multiple levels of directories.  Programs
  193. with overlay structures were also included.  DOS 2.0 and 3.3 were
  194. both used, and testing was performed with and without the memory
  195. resident program and shell routine - Carousel and Norton
  196. Commander.  Monochrome and VGA graphics adaptors were also
  197. included.
  198.      All product detection tests were made while boot sector
  199. viruses were already in memory and in control.  This was a
  200. critical point for us.  For example, the Pakistani Brain is a
  201. trivial virus to detect if you insert an infected floppy into an
  202. uninfected system and run a detection program against it.  If you
  203. boot from an infected diskette, however, the detection process
  204. becomes much more difficult (since the virus traps all attempts
  205. to read the boot sector).  We found only one generic product that
  206. was able to detect the Brain while it was active.
  207.      When testing against generic COM and EXE infectors, we used
  208. two approaches.  First, we loaded the protection software onto a
  209. clean machine and then infected it.  Second, we infected a
  210. machine with the virus, then installed the protection software,
  211. and then allowed the virus to continue the infection process.
  212.      Throughout the review process, we considered a product to be
  213. ineffective against a given virus if any of the following
  214. occurred:
  215.  
  216.      -    The program was unable to detect the presence of
  217.           infection activity during its normal check cycle.
  218.      -    The system hung when the virus was introduced, or
  219.           during the check cycle, and no warning indication was
  220.           given by the program prior to the hang-up.  (This
  221.           assumed, of course, that the virus ran normally without
  222.           the prevention product being present)
  223.      -    A loss of data occurred during the checking process.
  224.  
  225.      A product was considered to be effective against a given
  226. virus if all of the following occurred:
  227.  
  228.      -    The product identified the presence of infection
  229.           activity.
  230.      -    The product was able to identify each and every
  231.           infected component of the system, name each infected
  232.           program, and specify the program's directory path.
  233.  
  234.      Usability ratings were loosely handled as follows:
  235.  
  236.      1.   Global detection products that required more than two
  237.           seconds per program for a system scan (ten minutes on
  238.           our test system) scored high on our aggravation scale.
  239.      2.   Programs that required us to use new system command
  240.           structures or required us to modify the way in which we
  241.           normally interface with the operating system or our
  242.           application programs were placed in the questionable
  243.           category.
  244.      3.   Programs that required constant attention to the user's
  245.           manual in order to be useful were frowned on. 
  246.           (Allowances were made for Tim Sankary's slow thought
  247.           processes).
  248.      4.   Programs that caused false alarms were given an
  249.           annoyance ratio proportional to the number of false
  250.           alarms.
  251.      5.   Programs that installed in ten minutes and remained
  252.           invisible thereafter were well liked and much
  253.           appreciated.
  254.  
  255.      Please don't mistake our lighthearted attitude to the user
  256. friendly category.  It's just that we could not come up with a
  257. really objective measure here.  No matter how hard we tried, it
  258. usually ended up being a matter of personal opinion.  Keep in
  259. mind that we weighted the whole user interface area low in
  260. importance.
  261.  
  262. The Products:
  263.      We were able to identify over twenty PC products being
  264. distributed through vendor channels and through public
  265. domain/shareware channels.  We chose five to review that we felt
  266. were the most commonly available and most widely used.
  267.  
  268.  
  269.  
  270. C-4
  271. From McAfee Associates, 4423 Cheeney St, Santa Clara, CA 95054
  272. 408 988 3832
  273.  
  274. *** NOT RECOMMENDED ***
  275.  
  276.      C-4 is a classic virus filter product which is simple to
  277. install, easy to use and creates few false alarms.  It is a
  278. memory resident program that requires about 12K of memory (not
  279. much) and seems to run efficiently, consuming few system
  280. resources.  The instruction manual is brief, concise and to the
  281. point.  It comes with an automatic install utility, and the
  282. installation takes about 30 seconds.  From there on it's
  283. automatic.  The checking function can be easily turned on and off
  284. through a keyboard toggle, and a simple mechanism for excluding
  285. "safe" programs is included.   A pop-up window appears whenever a
  286. violation is reported, and the name of the violating program, and
  287. its target, are displayed.  Programs that violate C-4's filter
  288. criteria can be frozen and prevented from continuing the suspect
  289. activity.  All in all we found this product to be well designed,
  290. solid, easy to use and fairly unobtrusive.  A solid piece of
  291. software engineering.
  292.      So what's the problem?  Well, it doesn't work.  Like all
  293. filter products, it is limited to viruses that conform to
  294. standard operating system conventions.  These conventions include
  295. using interrupts rather than branching directly into the BIOS,
  296. keeping the original boot sector intact, not modifying the
  297. command interpreter, etc.  As we all know, not all viruses play
  298. by these rules.  
  299.      The net result of our testing showed that C-4 was unable to
  300. prevent or detect any of the boot sector viruses.  Additionally,
  301. if the system was infected before loading c-4, it was unable to
  302. detect future infections from any memory resident.
  303.      We cannot recommend this program.
  304.  
  305.  
  306.  
  307. Flu-shot+  (Shareware)
  308. from Software Concepts Design, 594 Third Avenue, NY, NY 10016
  309. 212 889 6438   
  310.  
  311. *** NOT RECOMMENDED ***
  312.  
  313.      FluShot+ is a mixture of filter program and detection
  314. program.  Like C-4, it attempts to trap system interrupts and
  315. catch viruses in the act of replication.  Like C-4, it is equally
  316. unsuccessful.  The infection detection aspects of the program add
  317. little to its ability to protect against infection, but they do
  318. contribute substantially to the overall cumbersome and
  319. frustrating user interface. 
  320.      The complicated documentation and installation required by
  321. FluShot+, however, was not our overriding concern.  The program
  322. simply did not work.  No boot sector virus was stopped or
  323. detected by FluShot+, and the false alarm rate was high enough to
  324. motivate many system users to ignore a real virus infection,
  325. whenever one could be detected.
  326.      If we add to this the numerous quirks of the program, such
  327. as problems running with graphics software and conflicts with
  328. certain memory resident programs, we find little positive value
  329. in it.
  330.      We cannot recommend this program.
  331.  
  332.  
  333. Sentry  (Shareware)
  334. From McAfee Associates, 4423 Cheeney St, Santa Clara, CA 95054
  335. 408 988 3832
  336.  
  337. *** HIGHLY RECOMMENDED ***
  338.  
  339.      Every so often an easier, simpler approach really does work,
  340. and Sentry appears to be a one-in-a-million jewel of simplicity
  341. and effectiveness.  The most invisible product that we tested,
  342. Sentry can be installed by anyone able to type the word
  343. "install", and thereafter nothing more is seen or heard of it
  344. until a virus hits the system.  When it does, it's certain to get
  345. caught.  Sentry was the only product able to catch every one of
  346. our test viruses.
  347.      It does have some small faults however.  First, it
  348. increases the system boot-up time by about 10 seconds for every
  349. 100 programs in your system.  For the average user this will not
  350. be a problem (the average person uses less than 50 programs, we
  351. are told).  For some folks however, this may become burdensome. 
  352. If you are one of those rare people who use (or at least have)
  353. 2,000 programs or more, you can expect to wait over 5 minutes
  354. extra every time you boot your system.  
  355.      A second fault is that people who do a lot of programming or
  356. software development will constantly be changing executable files
  357. on the disk.  Sentry will prod you about these changes every time
  358. you boot.  The only way to shut it up is to re-install it so that
  359. it can take a new snapshot of the current system state.  We all
  360. found this annoying (although, to be fair, every product that we
  361. have seen has this same annoyance).  One way around it is to do
  362. all compiles, links, etc. in a given subdirectory and instruct
  363. Sentry to ignore all the happenings in that subdirectory.  This
  364. works quite well.  If you do not frequently compile, or daily
  365. update your software to new versions, however, then Sentry should
  366. remain innocuous.
  367.      A final caution about Sentry.  It does not work properly in
  368. the DOS 4.0 environment and should not be used in this
  369. environment.  We understand that a new version that will correct
  370. this problem is currently under development.
  371.      Sentry works by creating a snapshot file of all critical
  372. system elements and comparing that snapshot file to the current
  373. state of the system at boot time.  If you power down or re-boot
  374. your system at least once a week, then Sentry will flag any
  375. infection long before the infection will activate and cause
  376. damage.  If you are running in a networked environment, or in any
  377. other environment where the machine is seldom turned off or re-
  378. booted, then Sentry can be manually invoked by typing the command
  379. - SENTRY.  
  380.      Sentry uses a unique approach to detecting a virus.  It
  381. does not checksum the entire program, but only those areas of the
  382. program would would have to change when any virus attaches to the
  383. program.  This allows it to execute very rapidly, and thus makes
  384. periodic scans of the entire system feasible.  This separates
  385. Sentry from all other products.  The second separator, of course,
  386. is that it is effective against all of the viruses that currently
  387. exist.  We believe that this effectiveness will continue for new
  388. viruses.  
  389.      
  390. Virus-Pro
  391. From International Security Technologies, 515 Madison Avenue, NY,
  392. NY 10022   212 288 3101
  393.  
  394. ** RECOMMENDED **
  395.  
  396.      Virus-Pro is a product designed for large corporations, and
  397. we include it here for those researchers studying epidemiological
  398. data using multiple computers as a study base.
  399.      Virus-Pro is much more than a virus detector.  Virus-Pro
  400. includes sophisticated audit trails and history information that
  401. can be used track the origin of an infection within an
  402. organization, and to monitor the use and movement of programs
  403. from PC to PC.  It does require a fair amount of run time for the
  404. checking process, and a dedicated Virus-Pro systems administrator
  405. or co-ordinator is needed, but it is an excellent system level
  406. product.
  407.      The basic function of Virus-pro is to monitor the status of
  408. the executable programs on the logical drives and to report on
  409. changes and exceptions.  Virus-Pro stores five parameters about
  410. each executable or hidden file in a scan file.  These parameters
  411. are:
  412.      (1)  The name, extension and path
  413.      (2)  The size in bytes
  414.      (3)  The date-time stamp
  415.      (4)  The attributes (hidden, system, and read-only).
  416.      (5)  A checksum of the program
  417.  
  418.      In addition, the program stores information about the
  419. logical drive's boot track.  Virus-Pro then compares the scan
  420. file with both a prior scan file from the same logical drive and
  421. a baseline file which has been created using scans of individual
  422. software distribution diskettes.  Differences in or matches to
  423. one or more of these five parameters are used to determine the
  424. presence of infection.  
  425.      Administrative software makes it easy for an organization's
  426. Virus-Pro co-ordinator to prepare diskettes for site co-
  427. ordinators.  Each site co-ordinator has similar facilities to
  428. make Virus-Pro diskettes for his or her PC "owners".  PC owner
  429. diskettes include a disk scanning and analysis program.  Site co-
  430. ordinators use a program called MAKEBASE to place data extracted
  431. from vendor diskettes into baseline files which a baseline
  432. analysis program compares with the disk scan outputs.  The
  433. analysis can spot viruses, pirated software, wrong program
  434. versions and a host of other inconsistencies of interest to a co-
  435. ordinator.  Two system-wide administrative programs maintain
  436. master files of site co-ordinators and PC owners, print complete
  437. name/address/phone number lists of co-ordinators and owners,
  438. prepare diskettes, and provide other administrative functions.
  439.      Virus-Pro is the most comprehensive system level antivirus
  440. product that we have seen or heard of.  It does however require
  441. more maintenance than stand-alone utility antiviral products, and
  442. it did fail to catch four of the boot sector viruses (but caught
  443. all others).  In spite of this, We feel that it provides a fair
  444. level of protection, and excellent audit trail capabilities for
  445. tracking virus spread.
  446.      A note of caution:  This is not a product for the individual
  447. user of a stand-alone system.  It is specifically designed for
  448. the corporate environment.
  449.  
  450.  
  451. Disk Defender
  452. From Director Technologies, 906 University Place, Evanston, IL 
  453. 60201   312 491 2334
  454.  
  455. ** RECOMMENDED **
  456.      
  457.      Disk defender is an add-on board for IBM PCs and
  458. compatibles.  The product write protects the hard disk from
  459. erasure or modification to programs or data files that do not
  460. require frequent changes.  It can therefor protect against
  461. viruses trying to attach to system or application programs, or
  462. even to the boot sector.  It blocks their attempts and provides a
  463. visual indication that disk writes are being attempted to a write
  464. protected area.
  465.      A switch attached to the board write protects the entire
  466. disk, just a portion, or none of the disk.  The switch can be
  467. set, then removed and stored in a secure place.  In addition, the
  468. board allows a portion of the hard disk to be write protected,
  469. while allowing normal writes to other areas.
  470.      Disk defender allows the hard disk to be divided into two
  471. active DOS partitions and allows the user to designate an area or
  472. zone as read only or as read/write.  Indicator lights on the
  473. switch box illuminate when an attempt is made to write to a
  474. protected partition.
  475.      The disk defender is one of the most effective antiviral
  476. products available for protecting the hard disk..  Clearly, if a
  477. virus cannot physically access its host program, then it cannot
  478. infect the system.  It does not, however, protect against floppy
  479. viruses.  There is no software utility included with the package
  480. to prevent or detect floppy boot sector infectors, for example. 
  481. Thus the 5 floppy based boot viruses lived and prospered quite
  482. happily in the system with Disk Defender installed.    There are
  483. some other drawbacks as well.  Installation is non trivial and
  484. requires a backup of all data and a re-format of the hard disk. 
  485. Then all data and programs must be restored.  Disk defender also
  486. requires that files be re-organized, and some application
  487. programs will have to be reconfigured if they use the C drive for
  488. temporary storage.  Thus, a degree of flexibility is lost which
  489. may be unacceptable to some people.
  490.      In spite of its limits, however, Disk Defender is a highly
  491. reliable and secure product for protecting your hard disk.
  492.  
  493.  
  494.  
  495.  
  496. Jim Goodwin, Lynn Marsh and Tim Sankary
  497.  
  498. From the HomeBase Virus Research Group
  499. 408 988 4004